08:说一下 CommonJS、AMD 和 CMD
全部标签 是否有任何工具可以将使用CommonJS/Node-like模块(require、exports等)编写的模块编译成单个.js文件以提供服务到浏览器? 最佳答案 听起来您正在寻找Browserify:https://github.com/substack/node-browserify"Makenode-stylerequire()workinthebrowserwithaserver-sidebuildstep,asifbymagic!" 关于javascript-是否有将Common
我想使用GoogleClosureCompiler构建一组CommonJS模块。这可以开箱即用吗?或者,是否可以对CommonJS模块进行一些简单的转换,以允许ClosureCompiler使用它们? 最佳答案 已向ClosureCompiler添加支持,使其更易于使用CommonJS和AMD/require.js使用以下编译器标志的模块:--transform_amd_modules--process_common_js_modules--common_js_entry_module--common_js_module_path_
我不是在寻找如何调试javascript。我对手头的工具非常熟悉,尽管不熟悉Firefox的新调试功能,因为他们构建了自己的“firebug”。我真的只是在寻找一种简单的方法来读取堆栈跟踪,因为对象/函数很容易通过Ember自己的调用机制运行。很容易忘记被调用的函数是什么以及它附加到的this的绑定(bind)。有没有人在调试ember的堆栈时想到了任何技巧或肺炎?更新:这不是异步调试的问题http://www.html5rocks.com/en/tutorials/developertools/async-call-stack/ 最佳答案
假设我正在用JavaScript编写一个模块,它可以在浏览器和服务器(使用Node)上使用。让我们称之为模块。假设Module将受益于另一个名为Dependancy的模块中的方法。这两个模块都被编写为供浏览器和服务器使用,就像CommonJS风格:module.jsif(typeofmodule!=='undefined'&&module.exports)module.exports=Module;/*server*/elsethis.Module=Module;/*browser*/dependancy.jsif(typeofmodule!=='undefined'&&module.
我见过许多不支持AMD的加载模块变体但是,我想知道这样做的最佳做法是什么。最终,我想编写这样的模块:module.js:define(["jQuery","Underscore","Backbone"],function($,_,Backbone){...modulecodehere}但是使用AMD加载这些依赖项存在很多问题,因为它们并非都与AMD兼容。 最佳答案 我创建了一个待办事项列表样板Web应用程序,它将所有模块加载为AMD模块(没有加载程序)。检查一下:https://github.com/ronreiter/webapp
一个星期以来,我开始学习如何将require.js与Backbone.js和Underscore.js一起使用。这是一个非常困难的东西,但3天前我读到Underscore将不再支持Require.js(AMD)了!现在我有点困惑。我非常喜欢脚本加载器的概念,不想错过它!有人已经成功地将脚本加载器与Backbone.js(0.5.3)和Underscore(1.3.0)一起使用了吗?谢谢你的帮助!链接:另一个解决方案here 最佳答案 我目前在我的Backbone样板中使用下划线1.3和Backbone0.5.3。你可以看到我在那里做
在这段代码中:varFruit=function(){}Fruit.prototype={color:function(){console.log('Fruitcolor...')}}varApple=function(){}Apple.prototype=newFruit()Apple.prototype.constructor=Applevara=newApple()Apple.prototype=null//thequestion!!!a.color()当Apple.prototype被设置为null时,为什么实例a仍然可以调用color方法? 最佳答
我想在我的一些脚本中使用一些CommonJS兼容模块。这些脚本只是为了在我的笔记本电脑上做一些事情:它不在浏览器中,也不在服务器中。我只是操作一个我在本地使用的mongodb。所以我想知道,最好的方法是什么?我只发现过时的包装器可以提供CommonJS功能和mongoshell。我应该手动编写一个require系统吗?我应该手写解决方法吗?是否已经存在最小加载程序?当然,您对此事的所有想法都会受到赞赏。对于实现CommonJS其他部分的指针也将不胜感激。 最佳答案 @莫格你应该试试http://code.google.com/p/g
我正在使用browserify导入一些nodejs模块。使用此语法一切正常:$=jQuery=require('jquery');require('bootstrap');require('angular');require('ngRoute');require('firebase');require('angularfire');现在我正在尝试将其转换为typescript(使用1.8版),但我不知道该怎么做。我正在使用来自browserify的tsify插件我试过一些像这样的语法import*asjqueryfrom"jquery";import*asjQueryfrom"jque
我在互联网上找到了一种方法,可以从url中检索youtube视频的Id。就是这样。varvid;varresults;results=url.match("[\\?&]v=([^]*)");vid=(results===null)?url:results[1];Id将包含在“vid”中。我不明白,我觉得有趣,想知道的是这个。results=url.match("[\\?&]v=([^]*)");它是如何工作的? 最佳答案 它正在使用regularexpression从完整的URL中提取视频的ID。这个特定的正则表达式分解如下